1. Technical Field
The present invention relates generally to cellular wireless communication networks; and more particularly to a method of reliably transmitting high speed data within such a cellular wireless communication network.
2. Related Art
Wireless networks are well known. Cellular wireless networks support wireless communication services in many populated areas of the world. Satellite wireless networks are known to support wireless communication services across most surface areas of the Earth. While wireless networks were initially constructed to service voice communications, they are now called upon to support data communications as well.
The demand for data communication services has exploded with the acceptance and widespread use of the Internet. While data services have historically been serviced via wired connections, wireless users are now demanding that their wireless units also support data communications. Many wireless subscribers now expect to be able to “surf” the Internet, access their email, and perform other data communication activities using their cellular phones, wireless personal data assistants, wirelessly linked notebook computers, and/or other wireless devices. The demand for wireless network data communications will only increase with time. Thus wireless networks are currently being created/modified to service these burgeoning data service demands.
Significant performance issues exist when using a wireless network to service data communications. Wireless networks were initially designed to service the well-defined requirements of voice communications. Generally speaking, voice communications require a sustained bandwidth with minimum signal-to-noise ratio (SNR) and continuity requirements. Data communications, on the other hand, have very different performance requirements. Data communications are typically bursty, discontinuous, and may require a relatively high bandwidth during their active portions. To understand the difficulties in servicing data communications within a wireless network, consider the structure and operation of a cellular wireless network.
Cellular wireless networks include a “network infrastructure” that wirelessly communicates with user terminals within a respective service coverage area. The network infrastructure typically includes a plurality of base stations dispersed throughout the service coverage area, each of which supports wireless communications within a respective cell (or set of sectors). The base stations couple to base station controllers (BSCs), with each BSC serving a plurality of base stations. Each BSC couples to a mobile switching center (MSC). Each BSC also typically directly or indirectly couples to the Internet.
In operation, each base station communicates with a plurality of user terminals operating in its cell/sectors. A BSC coupled to the base station routes voice communications between the MSC and the serving base station. The MSC routes the voice communication to another MSC or to the PSTN. BSCs route data communications between a servicing base station and a packet data network that may include or couple to the Internet.
The wireless link between the base station and the MS is defined by one of a plurality of operating standards, e.g., AMPS, TDMA, CDMA, GSM, etc. These operating standards, as well as new 3G and 4G operating standards define the manner in which the wireless link may be allocated, setup, serviced and torn down. These operating standards must set forth operations that will be satisfactory in servicing both voice and data communications.
Transmissions from base stations to user terminals are referred to as “forward link” transmissions while transmissions from user terminals to base stations are referred to as “reverse link” transmissions. Generally speaking, the volume of data transmitted on the forward link exceeds the volume of data transmitted on the reverse link. Such is the case because data users typically issue commands to request data from data sources, e.g., web servers, and the web servers provide the data to the user terminals.
The transmissions of high speed packet data (HSD) from base stations to user terminals, and vice versa, suffer from errors for many reasons. Errors may be particularly acute in applications with low bit energy to noise power spectral density ratio (Eb/No). In these situations, a conventional Forward Error Correction (FEC) (e.g., convolutional coding) alone often does not meet the maximum bit error rate (BER) required for the operation. In such a case, combining the FEC scheme in conjunction with a data retransmission scheme such as Automatic Repeat ReQuest (ARQ) is often employed to enhance performance. This combination of FEC and ARQ is generally known as Hybrid ARQ.
Generally speaking, there are three classes of hybrid ARQ techniques. Type I Hybrid ARQ schemes include data and parity bits for both error detection and correction in every transmitted packet. If an uncorrectable error is detected at the receiver, the received packet is rejected and a retransmission is requested. The transmitter sends the original packet again at the same data rate. A disadvantage of this scheme is that the decoder discards uncorrectable packets even if they might contain some useful information.
In a Type II Hybrid ARQ scheme, the concept of code puncturing is used. A first transmitted packet contains the data and some of the parity bits for decoding. If this transmission fails to be received correctly, the data is stored and a retransmission is requested. The transmitter then sends the supplemental bits, which were previously deleted by puncturing. The receiver then combines the stored data with the received bits to produce a lower rate decoding. If the combined decoding fails, the process is repeated, until the decoding rate is reduced to that of the mother code. The Type II Hybrid ARQ scheme is thus more efficient that the Type I Hybrid ARQ scheme because it uses all received data.
A significant drawback of the Type II Hybrid ARQ scheme is that each of the retransmitted packets does not independently contain enough information to decode the data. If the initially transmitted data packet suffers from header errors, for example, the retransmissions of parity bits will be useless and the data cannot be recovered. A number of special cases of Type II Hybrid ARQ schemes exist. Type II Hybrid ARQ schemes are also referred to as incremental redundancy schemes.
In a Type III Hybrid ARQ scheme, a starting code rate is chosen to match the channel noise conditions, and complementary transmissions are combined prior to decoding. While the decoder need not rely on previously received sequences for decoding, these sequences can be used to improve the performance of the code. Complementary convolutional codes have been proposed as FEC codes for this scheme.
Another technique developed to address such deficiencies in transmissions includes the more recently developed turbo code method. Turbo coding for FEC has proven to be very powerful for correction of corrupted data communicated across noisy channels. One form of turbo coding is concatenated convolutional coding (PCCC). Turbo coding processes a block of data bits using a transmitting turbo encoder that encodes the block of data and a receiving turbo decoder that decodes the encoded block. For data transmissions (and voice transmissions), the data stream is divided into blocks, or data packets, of N data bits, and turbo coding processes these individual data packets. The original data bits are provided as inputs to the turbo encoder. The turbo encoder generally includes two convolution recursive encoders, which together provide an output (codeword) including both systematic data bits (from the original data bits provided) and additional parity bits.
The first encoder operates on the input systematic data bits and outputs code bits including both the systematic data bits and parity bits. The turbo encoder also includes an interleaver, which interleaves the systematic data bits before feeding the data bits into the second encoder. The second encoder operates on the interleaved data bits and outputs code bits including parity bits. The output of the first and second encoder are concurrently processed and transmitted to the receiver decoder in transmission blocks, which then decodes the transmission block to generate decoded data bits.
Each of these Hybrid ARQ schemes has its benefits and its shortcomings. Thus, there exists a need for an improved Hybrid ARQ scheme that overcomes these shortcomings. Further, there exists a need for an improved Hybrid ARQ scheme that may be efficiently used with Turbo coding operations.